<?php

declare(strict_types=1);

namespace App\Services\Cache;

class Key
{
    //登陆验证码有效期
    public const MINI_LOGIN_VERIFY = 'login:verify-%s';

    //登陆验证码有效期发送间隔
    public const MINI_LOGIN_VERIFY_TTL = 'login:verify:ttl-%s';

    //分销key
    public const MINI_DISTRIBUTION = 'distribution:openid:%s';

    /**
     * 小程序登陆验证码key
     */
    public static function getMiniLoginVerify(string $phone): string
    {
        return sprintf(self::MINI_LOGIN_VERIFY, $phone);
    }

    /**
     * 小程序登陆验证码发送间隔key
     */
    public static function getMiniLoginVerifyTtl(string $phone): string
    {
        return sprintf(self::MINI_LOGIN_VERIFY_TTL, $phone);
    }

    /**
     * @param string $openid
     * @return string
     */
    public static function getDistribution(string $openid): string
    {
        return sprintf(self::MINI_DISTRIBUTION, $openid);
    }
}
